package hibernate_basic.Persistence.beginnerfirstprocedure;

/**
 * @author Administrator
 * @create 2018-12-30 11:48
 * @desc 存储持久化对象
 **/

import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;

public class StoragePresistence {

    public static void main(String[] args) {


        /*
        获取session对象的过程
        ①.创建配置类对[Configuration]加载配置类信息[configure()方法]
        ②.配置类对象通过[buildSessionFactory()]方法获取会话工厂对象[SessionFactory]
        ③.会话工厂对象通过[openSession()]方法获取会话[session]对象
         */

        Configuration cfg=new Configuration();//创建配置类对象
        cfg.configure("hibernate_basic/config/config_mapping/hibernate.cfg.xml");//加载hibernate配置文件信息,也可以不指定,则加载根目录下指定hibernate.cfg.xml文件

        //获取会话工厂对象
        SessionFactory factory=cfg.buildSessionFactory();

        //获取session对象
        Session session=factory.openSession();

        //获取事务对象
        Transaction t=session.beginTransaction();

        //创建Persistence持久化类对象
        Persistence per=new Persistence();

        //为持久化类属性设置值
        per.setName("黄彪");
        per.setAge(19);
        per.setHeight(178.2);
        per.setWeight(68.6);

        session.persist(per);//将对象保存到session对象中

        t.commit();//提交事务
        session.close();//关闭session会话对象

        System.out.println("end");
    }
}
